Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [C# -> PHP]Przesyłanie plików.
Eqalizer
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 12.01.2006

Ostrzeżenie: (0%)
-----


Witam,
właśnie tworzę aplikację do wysyłania zamówień przez internet. Każde zamówienie składa się z tekstu i plików (ten tekst to opis do każdego z plików). Ze względów bezpieczeństwa postanowiłem, że C# będzie łączyć się z PHP działającym na serwerze. Teraz pytanie: czy to rozwiązanie jest dobre? Czy PHP poradzi sobie, jeżeli przez C# przekażę do niego np. 30 plików, każdy powiedzmy wielkości 3 MB + opisy? Do PHP chcę przekazać pliki do zmiennej $_FILES.

Dziękuję za odpowiedź.
Go to the top of the page
+Quote Post
Wykrywacz
post
Post #2





Grupa: Zarejestrowani
Postów: 726
Pomógł: 20
Dołączył: 8.12.2005
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


A po co ty chcesz w to mieszać c#?
Albo zrób to w c# z asp, albo poczytaj o https

edit: http://pl.wikipedia.org/wiki/HTTPS

Ten post edytował Wykrywacz 22.10.2008, 15:02:58
Go to the top of the page
+Quote Post
batman
post
Post #3





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Jeśli tworzysz aplikację desktopową do składania zamówień, to moim zdaniem jest to kompletnie bez sensu. Ale jeśli się upierasz, że tak to ma działać, to nie pozostaje nic innego jak pomóc (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Aby rozwiązanie było bezpieczne potrzebujesz kilku rzeczy:
1. Sprawdzanie kto wysyła pliki (logowanie/lista IP).
2. Zamiast wysyłać pliki jako POST, wysyłaj je na serwer FTP (zdecydowanie lepiej na serwer SFTP, SCP). Wówczas skrypt działający w cronie będzie sprawdzał, czy pojawiły się nowe pliki/zamówienia.
Go to the top of the page
+Quote Post
Eqalizer
post
Post #4





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 12.01.2006

Ostrzeżenie: (0%)
-----


1. To musi być aplikacja, którą użytkownik może ściągnąć na swój dysk twardy.
2. Nie mam ściśle określonego sposobu na rozwiązanie problemu, po prostu znam C++ (łatwo poznać C#) i PHP.

Co do łączenia się przez FTP - tworzę folder TMP, gdzie użytkownicy mają prawo zapisu i tam aplikacja kliencka zapisuje najpierw plik z listą i opisem plików, a następnie same pliki. Potem PHP uaktywniane przez CRONA sprawdza, czy zamówienie jest kompletne (opisy+wszystkie pliki) i aktualizuje bazę, a pliki przerzuca do odpowiednich folderów pojedyńczych klientów, tak Panie Batmanie?
Go to the top of the page
+Quote Post
batman
post
Post #5





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Cytat
Co do łączenia się przez FTP - tworzę folder TMP, gdzie użytkownicy mają prawo zapisu i tam aplikacja kliencka zapisuje najpierw plik z listą i opisem plików, a następnie same pliki. Potem PHP uaktywniane przez CRONA sprawdza, czy zamówienie jest kompletne (opisy+wszystkie pliki) i aktualizuje bazę, a pliki przerzuca do odpowiednich folderów pojedyńczych klientów, tak Panie Batmanie?

Dokładnie tak. Pamiętaj tylko, że skrypt uruchamiany z crona musi ustawić sobie blokadę, by nie mielił jednego zamówienia kilka razy. Robi się to tak, że tworzysz tymczasowy plik na czas wykonywania skryptu. Jeśli podczas uruchamiania skryptu okaże się, że plik istnieje, przerywasz działanie skryptu. Zabezpieczenie takie jest konieczne, ponieważ cron powinien odpalać skrypt w krótkich odstępach czasu, np 5 minut.

P.S.
Z tym "panem" to przesadziłeś. Aż tak stary nie jestem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 16:54